home *** CD-ROM | disk | FTP | other *** search
/ Aminet 21 / Aminet 21 (1997)(GTI - Schatztruhe)[!][Oct 1997].iso / Aminet / misc / math / prime.lha / prime_3.liesmich < prev    next >
Encoding:
Text File  |  1997-07-31  |  3.3 KB  |  88 lines

  1. Autor:   Gerd Wieczorek
  2. SMail:   Berliner Str.1
  3.          14959 Trebbin
  4.          BRD
  5.  
  6. EMail:   gwieifjc@sp.zrz.tu-berlin.de
  7.          (1x wöchentlich kontrolliert)
  8.  
  9.  
  10. Prime (Version 3)
  11. -----------------
  12.  
  13. Dieses kurze Programm berechnet alle Primzahlen bis zu einer angegebenen
  14. Grenze und bietet die Möglichkeit, sie in einer Datei abzuspeichern.
  15. Es wird das Verfahren nach Eratosthenes ( Sieb des ~ ) verwendet. Das
  16. Programm benötigt einen Prozessor >= 68020.
  17.  
  18.  
  19. Benutzung
  20. ---------
  21.  
  22. Prime kann nur in der Shell aufgerufen werden.
  23. Befehlsschablone:  Prime MAX/A/N,FILE/K,BIGBUFFER=BB/S
  24.  
  25. Bedeutung der Optionen
  26.  MAX       - Obergrenze für die Suche nach Primzahlen
  27.  FILE      - Datei, in die die Primzahlen geschrieben werden
  28.  BIGBUFFER - Es wird ein größerer interner Buffer für die Ausgabe
  29.              verwendet, ohne BB: 8 KByte, mit BB: 256 KByte
  30.  
  31. Der Befehl kann während der Ausgabe mit CTRL-C unterbrochen werden. Wird
  32. kein Dateiname angegeben, werden auch keine Primzahlen ausgegeben.
  33.  
  34.  
  35. Geschwindigkeit
  36. ---------------
  37.  
  38. Nachdem in der letzten Zeit einige neue Programme zur Primzahl-
  39. Berechnung im AMINET auftauchten, die dazu noch schneller waren als mein
  40. eigenes :-(, habe ich mich an den Computer gesetzt und an Prime gefeilt.
  41. Dabei beseitigte ich gleich noch den einen FPU-Aufruf, der in der älteren
  42. Version genutzt wurde. Die Siebroutine ist nun 14 Befehle = 32 Byte groß,
  43. und benutzt für die Arithmetik nur Addierbefehle.
  44.  
  45. Auf meinem Rechner (A500, 68030/14MHz, 68882/20MHz, 4/1 MB) benötigt
  46. der Aufruf "Prime MAX .. FILE DH3:Test BB" folgende Zeiten:
  47.  
  48.  MAX        Sieve  Count   Output  Anzahl der
  49.               [s]    [s]      [s]  Primzahlen
  50.   1000000    1.00   0.12    10.98     78498
  51.   2000000    2.10   0.22    20.68    148933
  52.   5000000    5.58   0.58    49.36    348513
  53.  10000000   11.68   1.12    96.02    664579
  54.  15000000   17.90   1.70   142.26    970704
  55.  20000000   24.24   2.26   186.88   1270607
  56.  25000000   30.70   2.82   231.54   1565927
  57.  30000000   37.18   3.38   275.96   1857859
  58.  35000000   43.72   3.94   320.52   2146775
  59.  40000000   50.30   4.50   363.62   2433654
  60.  45000000   56.92   5.06   407.60   2718160
  61.  64000000   82.32   7.20   588.36   3785086
  62.  
  63. Gegenüber der letzten Version arbeitet die Sieb-Routine ungefähr doppelt
  64. so schnell, die Zählroutine wurde um den Faktor 10 schneller.
  65.  
  66. Die Anzahl der Primzahlen bis zur Obergrenze MAX läßt sich mit MAX/ln(MAX)
  67. abschätzen. Die Länge der erzeugten Textdatei beträgt ca. 10 * Anzahl der
  68. Primzahlen.
  69. Prime arbeitet mit VMM zusammen und nutzt eventuell vorhandenen virtuellen
  70. Speicher. Benötigt werden ca. MAX/16 in KB plus den eingestellten Ausgabe-
  71. buffer. Aufgrund der vielen Speicherzugriffe verlangsamt virtueller
  72. Speicher das Programm enorm. Ebenfalls anzuraten ist das Anschalten der
  73. Prozessor-Caches ( ca. 40% schneller bei meinem 68030 ).
  74.  
  75. Ansonsten würde ich mich über Anmerkungen, Vorschläge, Bugmeldungen
  76. freuen. Wer keine Vorschläge hat, sollte mir eine kleine E-Mail mit
  77. Geschwindigkeitsangaben ähnlich meiner schicken, natürlich unter Angabe
  78. der Rechnerkonfiguration.
  79.  
  80. Viel Vergnügen beim Ermitteln von Primzahlen !
  81.  
  82. Es gelten die üblichen Hinweise:
  83. Die Benutzung von Prime erfolgt auf eigene Gefahr. Für Schäden, die sich
  84. aus der Benutzung von Prime ergeben, bin ich nicht haftbar zu machen. Wenn
  85. jemand Prime in einem anderen Archiv einschließen will, muß er mich vorher
  86. per e-mail kontakten.
  87.  
  88.